﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Media;

namespace WindowsGame1
{
     abstract class Personnage
    {

    // ATTRIBUTS 
        private string nom;
        private Coordonées position;
        protected int pv, pvmax, agilité, force, defense, intelligence, volonté , vitesse;  // pv pour points de vie 
        /* mettre ici les caractéristiques sous forme de tableau ou chacune sa vartiable selon décision ultérieure */
        /* [%LU] mettre également l'inventaire */
        protected Texture2D Sprite;
        protected int portée;
        protected int spritehauteur, spritelargeur;

    //METHODES :
       
        public string nomduperso
        { get { return this.nom; } 
        set {this.nom = value ;} }
         abstract public void attaquer(Case tile);

         public int vie
         {
             get { return this.pv; }
             set
             {
                 if (value >= 0)
                     this.pv = value;
                 else this.pv = 0;
             }
         }

         public Texture2D image
         {
             get {return this.Sprite; }
         }

         public Coordonées pos
         { get { return this.position; }
             set { this.position = value; }
         }
         public int range
         { get { return this.portée; } }
         public int speed
         { get { return this.vitesse; } }

         public int shauteur
         { get { return this.spritehauteur; } }

         public int slargeur
         { get { return this.spritelargeur; } }
    }
}
